package net.sk.china.front.request.order;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import net.sk.china.front.constants.RegularConstants;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.io.Serializable;

/**
 * 订单支付 request
 * +----------------------------------------------------------------------
 * | Talk To [ 聊来改善地区金融服务环境，助力企业发展 ]
 * +----------------------------------------------------------------------
 * | Copyright (c) 2018-2024 聊来All rights reserved.
 * +----------------------------------------------------------------------
 * | Licensed ( <a href="http://www.apache.org/licenses/LICENSE-2.0">apache</a> )
 * +----------------------------------------------------------------------
 * | @Author: 聊来 <18970881148@qq.com>
 * +----------------------------------------------------------------------
 * | DateTime: 2024/6/13 15:46
 * +----------------------------------------------------------------------
 */
@Data
public class OrderPayRequest implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "订单编号")
    @NotBlank(message = "订单编号不能为空")
    private String orderNo;

    @ApiModelProperty(value = "支付类型：weixin-微信支付，yue-余额支付，offline-线下支付，alipay-支付宝支付")
    @NotBlank(message = "支付类型不能为空")
    @Pattern(regexp = RegularConstants.PAY_TYPE, message = "支付类型错误")
    private String payType;

    @ApiModelProperty(value = "支付渠道:h5-微信H5支付，public-公众号支付，routine-小程序支付，app-微信APP支付, aliPayApp-支付宝支付")
    @NotBlank(message = "支付渠道不能为空")
    @Pattern(regexp = RegularConstants.PAY_CHANNEL, message = "支付渠道错误")
    private String payChannel;

    @ApiModelProperty(value = "下单时小程序的场景值")
    private Integer scene;
}
